Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Wimbledon - London U.S. Open - New York Australian Open - Melbourne Lugano Challenger Murcia Challenger Mutua Madrid Open - Madrid French Open - Paris Wimbledon - London U.S. Open - New York Delray Beach Open - Delray Beach Oeiras 4 Challenger Australian Open - Melbourne BNP Paribas Open - Indian Wells Iasi Challenger Tiriac Open - Bucharest Generali Open - Kitzbuhel Bulgaria-w2 Bulgaria-w4 Serbia & Montenegro F2 Serbia & Montenegro F4 Romania F17 Bulgaria F2 Bulgaria F3 Turkey F3 Bulgaria F4 Macedonia F1 Serbia F1 Armenia F1 Georgia F2 Romania F14 Serbia F3 Germany F13 Serbia F4 Serbia F5 Bulgaria F7 USA F22 USA F6 Croatia F5 Turkey F4 Romania F1 Turkey F6 Bulgaria F1 Bulgaria F2 Bulgaria F3 Bulgaria F4 Romania F5 Romania F6 Macedonia F2 Romania F7 Serbia F1 Serbia F2 Romania F11 Romania F12 Romania F13 Romania F14 Romania F15 Serbia F3 Germany F15 Serbia F4 Germany F17 Bulgaria F7 Germany F18 Bulgaria F8 Germany F19 Croatia F11 Dominican Republic F4 Dominican Republic F5 Egypt F1 Egypt F2 Egypt F3 Egypt F4 Croatia F3 Croatia F4 Egypt F6 Romania F1 Bulgaria F1 Romania F2 Bulgaria F2 Bulgaria F3 Romania F3 Bulgaria F4 Serbia F1 Romania F5 Serbia F2 Serbia F3 Germany F6 Germany F7 Germany F8 Romania F11 Serbia F5 Germany F13 Serbia F4 Serbia F7 Germany F17 Bulgaria F7 Turkey F9 Senegal F1 Senegal F2 Iran F7 Iran F8 Dominican Republic F1 Dominican Republic F2 Dominican Republic F3 Turkey F5 Spain F11 Spain F12 Turkey F7 Bosnia & Herzegovina F3 Bosnia & Herzegovina F4 Bulgaria F3 Romania F2 Romania F3 Bosnia & Herzegovina F7 Romania F4 Serbia F1 Serbia F3 Germany F9 Romania F9 Romania F10 Serbia F4 Serbia F5 Belarus F1 Belarus F2 Serbia F6 Germany F13 Bulgaria F5 Turkey F9 Turkey F10 Turkey F11 Belarus F4 Egypt F4 Egypt F5 Turkey F6 Turkey F7 Turkey F8 Turkey F9 Turkey F10 Turkey F11 Turkey F12 Turkey F13 Italy F8 Bulgaria F1 Bosnia & Herzegovina F2 Italy F10 Bosnia & Herzegovina F3 Italy F11 Romania F2 Netherlands F1 France F8 Germany F5 France F9 Germany F7 France F11 France F12 Serbia F7 Serbia F8 Romania F9 Croatia F13 Israel F2 Egypt F1 Spain F1 Turkey F6 Turkey F7 Turkey F8 Turkey F12 France F7 Turkey F15 Turkey F16 Romania F3 Italy F11 Romania F1 Bosnia & Herzegovina F4 Italy F13 France F10 Turkey F26 Turkey F27 Italy F19 Serbia F9 Serbia F12 Serbia F13 Serbia F14 Croatia F10 Turkey F43 Turkey F44 Turkey F45 France F2 France F3 Croatia F1 Turkey F7 Turkey F8 Turkey F9 Croatia F5 Croatia F6 France F7 Turkey F15 Italy F4 France F9 Romania F3 Italy F11 Serbia F2 Serbia F5 Serbia F11 Croatia F12 Turkey F45 Egypt F3 Egypt F4 China F1 China F2 France F8 France F9 Bosnia & Herzegovina F1 Bosnia & Herzegovina F3 Romania F3 Italy F17 Serbia F1 Serbia F2 Serbia F3 France F13 Serbia F4 Serbia F7 Serbia F8 Serbia F10 Serbia F11 Greece F9 Greece F10 Greece F11 Cyprus F1 Cyprus F2 Senegal F1 Sri Lanka F1 Sri Lanka F3 Turkey F9 France F8 Croatia F8 Croatia F9 Croatia F11 Croatia F12 Serbia F3 Romania F7 Austria F4 Greece F10 Tunisia F33 Tunisia F35 Tunisia F2 Tunisia F3 China F2 China F3 Tunisia F12 Serbia F3 Tunisia F30 Tunisia F8 (Hammamet) Tunisia F9 (Hammamet) Bosnia & Herzegovina F2 (Brcko) Serbia F4 (Zlatibor) Italy F31 (Santa Margherita Di Pula) Italy F33 (Santa Margherita Di Pula) Italy F34 (Santa Margherita Di Pula) Italy F36 (Santa Margherita Di Pula) Morocco F5 (Beni Mellal) Sri Lanka F2 Tunisia F39 (Hammamet) Tunisia F40 (Hammamet) Tunisia F1 (Hammamet) Tunisia F2 (Hammamet) Spain F4 (Paguera (Mallorca)) Spain F5 (Murcia) Tunisia F11 (Hammamet) Italy F5 (Santa Margherita Di Pula) Italy F6 (Santa Margherita Di Pula) Serbia F1 (Novi Sad) Italy F28 (Santa Margherita Di Pula) Romania F16 Italy F29 (Santa Margherita Di Pula) M15 Monastir M15 Monastir M15 Porec M25 Santa Margherita Di Pula M25 Santa Margherita Di Pula M15 Novi Sad M25 Poznan M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15+H Bagnoles-de-l'Orne M25 Lima M25 Prague Bulgaria F1 M15 Sharm El Sheikh M15 Sharm El Sheikh M15 Sharm El Sheikh M15 Sharm El Sheikh M15 Cairo M15 Cairo M15 Antalya M15 Cairo M15 Cairo M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Antalya M15 Cairo M15 Prijedor M25 Kiseljak M15 Skopje M15 Skopje M25 Grasse M25 Belgrade Serbia F1 Croatia F6 Serbia & Montenegro F1 Macedonia F2 Bosnia/Herzegovina F6 Hungary F2 Bulgaria F3 Serbia F2 Ukraine F3 Germany F16 Bosnia & Herzegovina F5 Bosnia & Herzegovina F6 M15 Antalya M25 Antalya Bulgaria-w3 Serbia & Montenegro F5 Bulgaria F1 Bulgaria F2 USA F25 Italy F4 Romania F10 Serbia F6 Germany F8 Germany F14 Serbia F5 M25 Radomlje M25 Cairo Croatia F7 M15 Bol M25 Santa Margherita di Pula M15 Bol M25 Benicarlo M15 Kursumlijska Banja M15 Monastir M15 Kursumlijska Banja Turkey F10 M15 Pirot Banjaluka Challenger 2007 - Banja Luka M15 Antalya Sony Ericsson Open 2008 - Belgrade Mamaia Challenger - Constanta M15 Antalya M25 Porec Banja Luka Challenger Salzburg Challenger Recanati Challenger Trani Challenger Samarkand Challenger Karshi Challenger Astana Challenger Brasov Challenger Szczecin Challenger Ljubljana Challenger Heilbronn Challenger Marrakech Challenger Lermontov Challenger Tunis Challenger Karshi Challenger Samarkand Challenger Arad Challenger Kosice Challenger Timisoara Challenger Scheveningen Challenger Poznan Challenger Oberstaufen Challenger Banja Luka Challenger Napoli Challenger Fergana Challenger Kolkata Challenger Guangzhou Challenger Mersin Challenger Heilbronn Challenger Braunschweig Challenger Meerbusch Challenger Banja Luka Challenger Trnava Challenger Sibiu Challenger Tashkent Challenger Geneva Challenger Helsinki Challenger Burnie Challenger Launceston Challenger Helsinki Challenger Raanana Challenger Mersin Challenger Heilbronn Challenger Moscow Challenger Fergana Challenger Braunschweig Challenger Poznan Challenger Prague Challenger Seville Challenger Banja Luka Challenger Istanbul Challenger Sibiu Challenger Rome Challenger Tashkent Challenger Dallas Challenger Kazan Challenger Anning Challenger Karshi Challenger Heilbronn Challenger Samarkand Challenger Furth Challenger Chennai Challenger Fergana Challenger Blois Challenger Milan Challenger Braunschweig Challenger Prague Challenger Liberec Challenger Portoroz Challenger Genova Challenger Szczecin Challenger Banja Luka Challenger Mohammedia Challenger Mouilleron-Le-Captif Challenger New Delhi Challenger M15 Antalya Irving Challenger San Luis Potosi Challenger Francavilla Challenger Rome Challenger Caltanissetta Challenger Todi Challenger Braunschweig Challenger Cortina Challenger Manerbio Challenger Genova Challenger Almaty Challenger Timisoara Challenger - Timisoara Ningboo Challenger Suzhou Challenger Mouilleron-Le-Captif Challenger Shenzhen Challenger China F1 Liberec Challenger Punta Del Este Challenger Tunis Challenger Canberra Challenger Aix En Provence Challenger M15 Kursumlijska Banja M15 Kursumlijska Banja Ostrava Challenger Bordeaux Challenger Samarkand Challenger Mestre Challenger M25 Skopje Caltanissetta Challenger Rome Challenger Ljubljana Challenger Cordenons Challenger Como Challenger M15 Belgrade Ningboo Challenger Lima Challenger Liuzhou Challenger Ortisei Challenger Prostejov Challenger M15 Antalya San Luis Potosi Challenger Santiago Challenger Rome 2 Challenger M15 Alaminos-Larnaca Poznan Challenger Bucharest Challenger Tunisia F34 Bergamo Challenger Roanne Challenger Pau Challenger Pau Challenger Zadar Challenger Sanremo Challenger Barletta Challenger Split Challenger Heilbronn Challenger Surbiton Challenger Cali Challenger Chicago Challenger Grodzisk Mazowiecki Challenger Szczecin Challenger Seville Challenger Istanbul Challenger Seoul Challenger Busan Challenger Roanne Challenger Banja Luka Challenger Pune Challenger Phoenix Challenger Girona Challenger Madrid Challenger Split Challenger Iasi Challenger M15 Brcko Cary Challenger Marburg Challenger Barcelona Challenger Oeiras 3 Challenger Cleveland Challenger M25 Kursumlijska Banja Porto Challenger San Benedetto Challenger Guayaquil Challenger M15 Belgrade Bangalore Challenger Trnava Challenger Portoroz Challenger Baotou Challenger Rabat Challenger Sarajevo Challenger Bath Challenger Antalya 3 Challenger M15 Antalya Mersin Challenger Phoenix Challenger Lugano Challenger Mauthausen Challenger Ostrava Challenger Ambato Challenger Valencia Challenger Lyon Challenger Maspalomas Challenger Marburg Challenger Ostrava Challenger Braunschweig Challenger Oeiras 4 Challenger Scheveningen Challenger Karlsruhe Challenger Bercuit Challenger St. Tropez Challenger Brest Challenger Bergamo Challenger Helsinki Challenger Sibiu Challenger Danderyd Challenger St. Remy Challenger Punta Del Este Challenger M15 Bol Girona Challenger Prostejov Challenger Poznan Challenger Tenerife 2 Challenger Como Challenger St. Tropez Challenger Canberra Challenger Cordenons Challenger Girona Challenger Grodzisk Mazowiecki Challenger Hersonissos 6 Challenger Hamburg Challenger Banja Luka Challenger - Banja Luka Banja Luka Challenger Tashkent Challenger Rennes Challenger Barletta Challenger BCR Open Romania - Bucharest Sibiu Challenger St. Petersburg Open - St. Petersburg Serbia Open - Belgrade Split 1 Challenger Prague 3 Challenger Istanbul 2 Challenger Rome Challenger Kremlin Cup - Moscow St. Petersburg Open - St. Petersburg Murcia Challenger Sibiu Challenger BRD Nastase Tiriac Trophy - Bucharest Serbia Open - Belgrade Gerry Weber Open - Halle Qatar ExxonMobil Open - Doha ATP Vegeta Croatia Open - Umag Irving Challenger Loughborough Challenger Pune Challenger Kremlin Cup - Moscow Kazan Challenger Lima 2 Challenger Mouilleron-Le-Captif Challenger Aircel Chennai Open - Chennai Istanbul Challenger Moscow Challenger Todi Challenger Izmir Challenger Poznan Challenger Portugal Open - Oeiras Barcelona Challenger Happy Valley Challenger Hong Kong Challenger Kolkata Challenger SkiStar Swedish Open - Bastad Vegeta Croatia Open - Umag Kremlin Cup - Moscow Recanati Challenger Kosice Challenger M15 Antalya Belgrade Challenger Eckental Challenger BRD Nastase Tiriac Trophy - Bucharest TEB BNP Paribas Istanbul Open - Istanbul BMW Open - Munich ATP Studena Croatia Open Umag - Umag Ortisei Challenger Winston-Salem Open - Winston-Salem Malaysian Open - Kuala Lumpur St. Petersburg Open - St. Petersburg Qatar ExxonMobil Open - Doha Memphis Open - Memphis Delray Beach Open - Delray Beach BRD Nastase Tiriac Trophy - Bucharest TEB BNP Paribas Istanbul Open - Istanbul Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Tyumen Challenger If Stockholm Open - Stockholm Heilbronn Challenger Garanti Koza Sofia Open - Sofia Abierto Mexicano Telcel - Acapulco Grand Prix Hassan II - Marrakech Antalya Cup - Antalya Konzum Croatia Open - Umag Suisse Open - Gstaad Generali Open - Kitzbuhel St. Petersburg Open - St. Petersburg ASB Classic - Auckland Garanti Koza Sofia Open - Sofia Batman Challenger New York Open - New York Delray Beach Open - Delray Beach Gazprom Hungarian Open - Budapest Open Parc - Lyon Antalya Cup - Antalya Winston-Salem Open - Winston-Salem Moselle Open - Metz Chengdu Open - Chengdu China Open - Beijing Tata Open Maharashtra - Pune Open Sud de France - Montpellier Bergamo Challenger New York Open - New York Delray Beach Open - Delray Beach Geneva Open - Geneva Noventi Open - Halle BB&T Atlanta Open - Atlanta Abierto Mexicano de Tenis Mifel - Los Cabos Chengdu Open - Chengdu Intrum Stockholm Open - Stockholm ABN AMRO World Tennis Tournament - Rotterdam Delray Beach Open - Delray Beach bett1HULKS Indoors - Cologne Astana Open - Nur-Sultan Hamburg European Open - Hamburg Sofia Open - Sofia Antalya Open - Antalya Dubai Duty Free Tennis Championships - Dubai Mercedes Cup - Stuttgart Mallorca Championships - Mallorca Nordea Open - Bastad Plava Laguna Croatia Open - Umag Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Singapore Tennis Open - Singapore Adelaide International 1 - Adelaide Mersin Challenger Tata Open Maharashtra - Pune Bogota Challenger Open Parc - Lyon Mercedes Cup - Stuttgart Liberec Challenger Kazan Challenger Tata Open Maharashtra - Pune Open 13 Provence - Marseille Millennium Estoril Open - Estoril Barcelona Open Banc Sabadell - Barcelona Poprad Tatry Challenger Terra Wortmann Open - Halle Delray Beach Open - Delray Beach BRD Nastase Tiriac Trophy - Bucharest Raanana Challenger Arad Challenger Erste Bank Open - Vienna Brasov Challenger Poznan Challenger Oberstaufen Challenger Kremlin Cup - Moscow New Delhi Challenger Erste Bank Open - Vienna Abierto Mexicano Telcel - Acapulco Memphis Open - Memphis Chisinau Challenger Casablanca Challenger Todi Challenger Genova Challenger Open de Nice Cote d'Azur - Nice Caltanissetta Challenger Gazprom Hungarian Open - Budapest ATP Challenger Tour Finals M25 Kursumlijska Banja Sibiu Challenger Orleans Challenger Mons Challenger Guangzhou Challenger Buenos Aires Challenger Maui Challenger Oberstaufen Challenger Barcelona Open BancSabadell - Barcelona Quimper Challenger Cherbourg Challenger Jonkoping Challenger Panama City Challenger Prostejov Challenger Generali Open - Kitzbuhel San Diego Challenger Monza Challenger Liberec Challenger Grand Prix Hassan II - Marrakech Ostrava Challenger Millennium Estoril Open - Estoril Francavilla Challenger TEB BNP Paribas Istanbul Open - Istanbul Kobe Challenger St. Remy Challenger Noventi Open - Halle Generali Open - Kitzbuhel Tyumen Challenger M15 Bol Padova Challenger Sopot Challenger Napoli Challenger Hall of Fame Open - Newport San Marino Challenger Villena Challenger Abierto de Tenis Mifel - Los Cabos Noventi Open - Halle Forli 2 Challenger Shenzhen Challenger Rakuten Japan Open - Tokyo Montevideo Challenger Banja Luka Open - Banja Luka Open 13 Provence - Marseille Abierto Mexicano Telcel - Acapulco Tampere Challenger Szczecin Challenger Citi Open - Washington Tampere Challenger Cagliari Challenger Lisbon Challenger Infosys Hall of Fame Open - Newport Brescia Challenger Nordea Open - Bastad Dallas Open - Dallas Delray Beach Open - Delray Beach Banja Luka Challenger Canberra Challenger Salzburg-Anif Challenger Iasi Challenger Gran Canaria Challenger Como Challenger Seville Challenger Parma Challenger Swiss Indoors Basel - Basel Bengaluru Challenger Boss Open - Stuttgart Prague 2 Challenger Skopje Challenger bett1HULKS Championships - Cologne Perugia Challenger Orleans Challenger Milan Challenger Citi Open - Washington Brasov Challenger Gonet Geneva Open - Geneva Korea Open - Seoul Hersonissos 5 Challenger Bucharest Open - Bucharest Lille Challenger Monastir Challenger Ilkley Challenger BNP Paribas Masters - Paris BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Suisse Open - Gstaad Rakuten Japan Open - Tokyo Maharashtra Open - Pune Abierto Mexicano Telcel - Acapulco Swiss Open - Gstaad Generali Open - Kitzbuhel Western & Southern Open - Cincinnati Nature Valley International - Eastbourne Shanghai Rolex Masters - Shanghai Murray River Open - Melbourne Miami Open - Miami Belgrade 2 - Belgrade Quimper Challenger Tallahassee Challenger Antalya Challenger Zadar Challenger Barletta Challenger Prague 1 Challenger Mauthausen Challenger Winston-Salem Open - Winston-Salem Indian Wells Challenger BNP Paribas Open - Indian Wells Kremlin Cup - Moscow Miami Open - Miami Banja Luka Challenger Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Coupe Rogers - Montreal Western & Southern Open - Cincinnati Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Western & Southern Open - New York Bratislava 1 Challenger Delray Beach Open - Delray Beach Rolex Paris Masters - Paris Tenerife 1 Challenger Turin Challenger Plava Laguna Croatia Open - Umag Dallas Open - Dallas Mutua Madrid Open - Madrid Grand Prix Hassan II - Marrakech Stockholm Open - Stockholm Open Parc - Lyon BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Shanghai Rolex Masters - Shanghai Miami Open - Miami Truist Atlanta Open - Atlanta Rakuten Japan Open - Tokyo Atlanta Open - Atlanta Hangzhou Open - Hangzhou Monte-Carlo Rolex Masters - Monte-Carlo Dallas Open - Dallas Miami Open - Miami BNP Paribas Open - Indian Wells Miami Open - Miami Shanghai Rolex Masters - Shanghai Mutua Madrid Open - Madrid Aircel Chennai Open - Chennai Shenzhen Open - Shenzhen SkiStar Swedish Open - Bastad Wimbledon - London National Bank Open - Toronto Internazionali BNL d'Italia - Rome Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Australian Open - Melbourne Wimbledon - London U.S. Open - New York Australian Open - Melbourne Wimbledon - London U.S. Open - New York Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne Australian Open - Melbourne French Open - Paris Wimbledon - London French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris M25 Santa Margherita di Pula Davis Cup, Group 2, PO, HUN-MDA 3-2 Davis Cup, Group II, 1R, BLR-MDA 4-1 Davis Cup, Group II, 1R, MDA-HUN 3-2 Davis Cup, Group II, 2R, BIH-MDA 1-3 Davis Cup, Group II, 3R, MDA-POR 2-3 Davis Cup, Group II, 1R, MDA-EGY 4-1 Davis Cup, Group II, 2R, MDA-BLR 4-1 Davis Cup, Group II, 3R, DEN-MDA 3-2 Davis Cup, Group II, 1R, HUN-MDA 4-1 ATP Cup - Brisbane, Perth, Sydney U.S. Open (juniors) French Open (juniors) Wimbledon (juniors) All Lower level tournaments Olympics - Rio de Janeiro M25 Santa Margherita di Pula Davis Cup, Group II, PO, TUR-MDA 2-3 Davis Cup, Group 2, 1R, LAT-MDA 5-0